package oracle;

import java.sql.*;

/**
 * JDBC链接Oracle数据库
 * 开发步骤：
 * 1.加载驱动-- Oracle-- oracle.jdbc.OracleDriver
 *            Mysql---com.mysql.jdbc.Driver
 * 2.获取链接 -- 链接成功数据库的对象 -- Connection 对象
 * 3.执行SQL语句【查询操作】
 *  ①oracle建表  login表  3个字段   序号、姓名、手机号
 *  ②编写静态sql；查询  select * from login;
 *  ③链接数据库同时获取：执行数据库对象：Statement对象
 *  4.执行SQL操作
 *  5.处理结果
 */

public class OracleJDBC {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //1.加载驱动
        Class.forName("oracle.jdbc.OracleDriver");
        //2.获取链接【准备工作】
        String username="system";//Oracle 用户名
        String password="20050613dyx";//Oracle密码
        String url="jdbc:oracle:thin:@127.0.0.1:1521:XE";//Oracle链接
        Connection con=DriverManager.getConnection(url,username,password);
        //打桩-- 测试链接是否成功
        System.out.println("是否链接："+con);

        //3.执行SQL语句  ②编写静态SQL：查询
        String sql="select * from login";
        String sql1="insert into login values(5,'老子',66666666)";
        //③链接成功数据库获取：执行数据库对象
        Statement st=con.createStatement();

        //5.执行SQL操作--返回一个对象：ResultSet对象：保存查询所有结果集
        ResultSet rs=st.executeQuery(sql);
        int rows=st.executeUpdate(sql1);
        System.out.println(rows);
        //5.处理结果   死循环：循环取所有的字段下记录
        while(rs.next()){//next()获取当前表中所有字段,有字段返回true

            //获取字段getInt()取数据库整形
            int id=rs.getInt("id");
            String name= rs.getString("name");
            String phone=rs.getString("phone");
            System.out.println("序号："+id+"名字："+name+"电话："+phone);
        }
        rs.close();
        st.close();
        con.close();
    }
}
